#ifndef DATE_4_04_2010
#define DATE_4_04_2010

class Date{
public:
	//static const int Days[] = 
	//		(31, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31, 31);
	// December, January, February, March, April, May, June, 
	// July, August, September, October, November, December, January
	Date();
	Date(int _y, int _m, int _d);
	Date(const Date& other);

	~Date() {};

	int Year() {return year;}
	int Month() {return month;}
	int Day() {return day;}

	Date& SetYear(int n);
	Date& SetMonth(int n);
	Date& SetDay(int n);

	Date& IncYear(int n);
	Date& IncMonth(int n);
	Date& IncDay(int n);

	bool IsLeap() const;
	static bool IsLeap(int n);
	int DayOfWeek() const;
	int DaysInMonth(int n) const;

	void Print() const;
	char* NameOfDay() const;

	
private:
	int year;
	int month;
	int day;
};

#endif